package day2;

public class Test {
    public static void main(String[] args) {

        //基础类型的数据转换 高精度 向 低精度转换
        int a;
        double b = 10.2;
        a = (int) b;

        System.out.println(a);


        //对象的  向上转型（向父类转型） 会自动转换
        //父类类型的引用   指向了 子类类型的对象

        Animal cat = new Cat("小猫");

        cat.sleep();
        cat.eat();

        //如果想调用 子类中特有的 方法 需要强制转换
        ((Cat)cat).run();



        //对象的向下转型  由父类 转向子类 需要强制转换

        Cat cat2=(Cat) cat;
        cat2.run();


        //
        Dog dog= (Dog) new Animal("狗");
        if (dog instanceof Animal){
            dog.eat();
        }


    }
}
